let foo = {   // 老板
    value:1
}

Function.prototype.call2 = function(content)  {
    // 老板和员工的联系 在原型链是=上
    content.fn = this; // .fn  JS可以动态加属性
    const args = [...arguments].slice(1)   // 运行时参数
    const result = content.fn(args);  // 该传的参数得传
    delete content.fn;
    return result;
}

function bar (name,age) {    // 打工者
    console.log(name);
    console.log(age);
    // this 指向全局
    console.log(this.value); // 由函数的调用 方式 来决定
}

bar.call2(foo,'Yq',21)